package org.me.service.impl;

import java.io.Serializable;
import java.util.List;
import org.me.data.GenericDaoHibernate;
import org.me.entityBeans.TTiposDocumentos;
import org.me.service.TipoDeDocumentoServiceHibernate;

public class TipoDeDocumentoServiceHibernateImpl implements TipoDeDocumentoServiceHibernate{
    
    private GenericDaoHibernate genericDaoHibernateImpl;

    public GenericDaoHibernate getGenericDaoHibernateImpl() {
        return genericDaoHibernateImpl;
    }

    public void setGenericDaoHibernateImpl(GenericDaoHibernate genericDaoHibernateImpl) {
        this.genericDaoHibernateImpl = genericDaoHibernateImpl;
    }  
   
    //Graba o actualiza  x su Id
    @Override
    public void saveOrUpdateTipoDeDocumento(TTiposDocumentos tipoDocumento) {
        this.getGenericDaoHibernateImpl().saveOrUpdate(tipoDocumento);
    }
    
    //Borra  x su Id
    @Override
    public String deleteTipoDeDocumento(TTiposDocumentos tipoDocumento) {
        return this.getGenericDaoHibernateImpl().delete(tipoDocumento);
    }
    
    //Trae todos ordenados x Id      
    @Override
    public List<TTiposDocumentos> findAllTiposDeDocumentos() {        
        return this.getGenericDaoHibernateImpl().findByOnlyNamedQuery( "TTiposDocumentos.findAll");
    }    
    
    //Trae el doc. que coincida con el nombre 
    @Override
    public List<TTiposDocumentos> findByNameTipoDeDocumento(String descTipoDeDocumento){          
        return this.getGenericDaoHibernateImpl().findByCriterio( "TTiposDocumentos.findByVDescripcionTipodocumento", "vDescripcionTipodocumento", descTipoDeDocumento );
    }  
    
    //Trae el doc. que coincida con el id
    @Override
    public TTiposDocumentos findByIdTipoDeDocumento(Serializable id){        
        return  this.getGenericDaoHibernateImpl().findById(TTiposDocumentos.class, id);
    }
    
}
